Open-loop electric drive with corrective controller

ABSTRACT

A controller minimizes periodic torque or force perturbations in an inductor-type synchronous motor drive by supplying current waveforms to each motor phase that contain a fundamental frequency component and selected harmonic components. The harmonic components in the phase currents heterodyne with the periodic permanent magnet flux fundamental frequency to create periodic torques or forces which subtract from the unwanted torques or forces perturbing the moving portion of the motor. The controller, which includes an interpolator, a memory, and a converter, provides for smooth incremental movement of a member such as a plot head, at substantially constant velocity, by applying selected continuous periodic waveform signals as phase currents to the windings of inductor-type synchronous motors.

BACKGROUND OF THE INVENTION

Existing X-Y positioners generally fall into two categories: (a)closed-loop servomechanisms; and (b) open-loop incremental positioners.Incremental positioners include basic designs that utilize theincremental step size inherent to the motor and more sophisticatedimplementations that divide the motor step into smaller parts through atechnique called microstepping.

Servo systems typically provide higher speed and greater precision butare, in general, more complicated and expensive to produce.

Open-loop incremental positioners use step motors to drive themechanical linkage. The motors are given pulses of steps. An upper limitexists on the pulse rate that a given motor and load combination willfollow and this ultimately limits the achievable performance of thecontroller. A large step size allows increased velocity at the cost ofresolution. This speed/resolution trade-off is characteristic ofincremental positioners.

Step motors are, however, significantly less sensitive to friction inthe mechanical linkage than are servo motors. Furthermore, theyaccurately position their shaft without the use of a position feedbackelement. As a result, incremental controllers are typically simpler andmuch less expensive to produce than servo controllers.

Some incremental positioner designs are beginning to use microsteppingtechniques to get around the speed/resolution trade-off. Problems areencountered, however, whenever step motors are used at other than theirinherent step positions. Both the static position accuracy and dynamictorque characteristics vary from nominal values in between the designedstep positions. This causes perturbations to occur when the motor ismoving that may interact with the mechanical resonances and degrade thesmoothness of the motion.

These characteristics of the motor impair the performance of X-Ypositioners. The motor imperfections most important to X-Y positionerperformance are:

(A) NON-LINEARITIES IN TORQUE NULL POSITIONING; AND,

(B) NON-UNIFORMITY IN THE TORQUE SLOPE. The first effect can obviouslyintroduce errors in the position of the mechanics both while moving andat rest. More importantly, it adds harmonics of the phase currentfrequency to the rotor motion. In addition, friction can pull the rotorappreciably away from the null torque position during constant velocitymotion. When this happens, a nonuniform torque slope creates periodicdisturbances in the rotor dynamic equilibrium. These disturbancescontain the phase current fundamental frequency and its harmonics.

At specific values of the phase current frequency, the fundamental andharmonic frequencies generated by these imperfections can interact withthe resonance in the rotor response. For example, an eight-pole,four-phase motor having a resonance at ω_(o) may experience significantexcitation of the rotor resonance when the sinusoidal phase currentshave frequencies of ω_(o), ω_(o) /4, ω_(o) /8 and ω_(o) /2.

SUMMARY OF THE INVENTION

Accordingly, the illustrated embodiment of the present inventioncomprises a synchronous inductor motor drive utilizing continuous phasecurrent waveforms to eliminate the usual speed-resolution trade-off byallowing essentially continuous positioning of the motor shaft atsubstantially constant velocity. The variation of motor characteristicsencountered in microstepping techniques is diminished by using phasecurrent waveforms that are corrected for a given motor type andoperating current level. The phase current waveforms are precompensatedby the addition of a harmonic of the fundamental frequency. The harmoniclinearizes the position accuracy and torque characteristics byheterodyning with the periodic permanent magnet flux fundamentalfrequency to diminish harmonic perturbations in the motor torque.Furthermore, adjustment is provided for the phase current dc levels andamplitude to allow further improvement in torque and positioncharacteristics. In addition to diminishing torque perturbations ofrotational motors, the present invention also provides for diminishingforce perturbations of linear motors and for accurate positioning, atsubstantially constant velocity, utilizing linear as well as rotationalinductor-type synchronous motors.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagrammatic illustration of an eight-pole, four-phasepermanent magnet synchronous induction step motor having the polescoupled in a two-phase manner as utilized in the system of the presentinvention.

FIG. 2 is a phasor diagram illustrating the relationship of third andfourth harmonic torques for substantially perfect cancellation of fourthharmonic torque.

FIG. 3 is a phasor diagram illustrating a minimum magnitude reached bythe fourth harmonic torque when the third and fourth harmonic torquesare in quadrature.

FIG. 4 is a combination block and schematic diagram of the system of thepresent invention.

FIG. 5 is a waveform diagram depicting the X-Y components of incrementalmoves made by the system of FIG. 4.

FIG. 6 is a block diagram of an alternative embodiment of the system ofthe present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring to FIG. 1, an eight-pole, four-phase permanent magnet stepmotor is illustrated with alternate phases in series. Parallelconnection of alternate phases can also be used. The rotor 11 is abipolar permanent magnet which rotates about an axis 13 and has aninstantaneous angular position of θ. The stator poles 1 through 8 areelectro-magnetically coupled in a two-phase manner with stator windings9 and 10. Alternate poles 1, 3, 5 and 7 are coupled to stator winding 9such that poles 1 and 5 have N clockwise windings and poles 3 and 7 haveN counter-clockwise windings. Alternate poles 2, 4, 6 and 8 are coupledto stator winding 10 such that poles 2 and 4 have N clockwise windingsand poles 6 and 8 have N counter-clockwise windings. A permanent magnetflux φi links the i^(th) stator pole winding and the rotor. InductancesL_(A) and L_(B) exist in stator windings 9 and 10 respectively andcurrents I_(A) and I_(B) are applied to stator windings 9 and 10respectively.

The torque developed by a synchronous inductor motor can be found byequating the electrical power applied at the stator windings to the sumof that flowing into storage mechanisms and that delivered to a load bythe motor shaft. Energy dissipated in the motor through copper,eddy-current, or hysteresis losses is assumed to be negligible. The twoelectrical phases of the motor are assumed to act independently of eachother in applying torque to the motor. The torque (T) can thus beseparated into A and B phase components such that ##EQU1##

The equations above indicate that torque arises from two mechanisms.First, the mmf (magnetomotive force) produced by the applied currentinteracts with the permanent magnet flux in the stator windings toproduce torque. Secondly, torque is produced when the applied currentinteracts with a changing inductance. The permanent magnet synchronousmotors discussed here, however, have very efficient flux paths linkingthe permanent magnet to the stator windings. Furthermore, measurementsshow that the inductance of each phase is very nearly independent ofshaft position so that dL/dθ is very nearly zero. Consequently the firstterm produces the dominant torque for these motors and the second termis negligible.

Neglecting the variable reluctance contribution gives the A phase torquefrom equation (1) as ##EQU2## Because of the motor construction thefollowing relationships hold between the flux waveforms for the variousstator windings ##EQU3## Whereφ(α) is some periodic waveform and α isrelated to the motor shaft position, θ, by

    α = Nrθ                                         (5)

where Nr equals the number of teeth on the rotor. For convenience areference position is chosen so that, when α & θ = 0, a tooth on therotor is exactly aligned with the center of stator poles 1 and 5. Thismakes φ(α) an even function symmetric about α = 0.

The periodic flux waveform φ(α) can be represented by an exponentialFourier series such that ##EQU4## Since φ(α) is even, all harmoniccoefficients will be real-valued and symmetric about zero such that

    C.sub.i = C.sub.-i = real number                           (8)

In general, the waveform of φ(α) will contain a large fundamental andall harmonics. It will be determined by the permeance of the airgapsbetween the rotor and the stator poles.

From equations (4) and (6) the series for φ₃ (α) and φ₇ (α) is seen tobe ##EQU5## which reduces to ##EQU6## Substituting equations (6) and(10) into (3) gives ##EQU7## Applying equation (5) and then takingderivatives yields ##EQU8##

All terms with even values of n in the above summation are zero. Thismeans that only odd harmonics of the flux waveform contribute to thetorque when the effects of all four A phase stator poles are combined inthe torque equation. The A phase torque can thus be expressed as##EQU9## A similar treatment using the relationships of equation (4)yields ##EQU10## Assume that the phase currents are sinusoidal such that##EQU11## Substituting these currents into equations (13) and (14) gives##EQU12##

When the motor is being driven in its normal synchronous mode, theelectrical and mechanical phases are related by

    α.sub.o (t) = α(t) + γ(t)                (19)

where γ(t) is a lag angle that depends on the instantaneous rotordynamics and load torque requirements. During constant velocityoperation γ(t) tends to be a constant, γ, and the phase currentelectrical angle is given by

    α.sub.o (t) = ω.sub.o t                        (20)

so that

    α(t) = ω.sub.o t-γ                       (21)

The A phase torque produced under these conditions can be expressed bycombining exponentials as ##EQU13##

Letting n = m-1 allows the summations to be easily combined into##EQU14## This can be written more simply as ##EQU15## where

    A.sub.2m = j(2m-1)C.sub.2m-1 Exp(-j(2m-1)γ) +j (2m+1)C.sub.2m+1 Exp(-j(2m+1)γ)                                      (26)

The B phase torque with sinusoidal phase currents can be found similarlyas ##EQU16## with

    B.sub.2m = j(-1).sup.m {(2m-1)C.sub.2m-1 Exp(-j(2m-1)γ)) + (2m+1)C.sub.2m+1 Exp(-j(2m+1)γ)}                    (28)

A practical translation of equations (25) through (25) is thatsinusoidal, steady state phase currents of frequency, ω₀, heterodynewith the odd harmonic contained in the permanent magnet flux waveformsto produce torque at dc and all even harmonic frequencies. Furthermore,the amplitude of the torque at any even harmonic frequency depends notonly on the input current amplitude but also on the amplitudes of fluxharmonics on either side of the particular torque harmonic. For example,the torque produced at frequency 4ω_(o) (m=2) depends on the amplitudesof the third and fifth flux harmonics. Finally, a dependancy on γ isseen in the expressions for A_(2m) and B_(2m).

The total motor shaft torque can now be obtained by adding equations(25) and (27). This gives ##EQU17## Comparing equations (26) and (28),however, reveals that

    B.sub.2m = (-1).sup.m A.sub.2m                             (30)

so that ##EQU18##

The term in brackets is zero whenever m is odd and two whenever m iseven. This, in effect, eliminates torque at frequencies of 2ω_(o),6ω_(o), 10ω_(o), etc., and enhances the torque produced at dc, 4ω_(o),8ω_(o), etc. The final expression for torque with sinusoidal phasecurrents can thus be written ##EQU19## where

    D.sub.4n = j(4n-1)C.sub.4n-1 Exp(-j(4n-1)γ) +j(4n+1)C.sub.4n+1 Exp(-j(4n+1)γ)                                      (33)

Factoring out common terms gives

    D.sub.4n = jExp(-j4nγ)[(4n-1)C.sub.4n-1 Exp(jγ)+(4n+1)C.sub.4n+1 Exp(-jγ)]            (34)

The existence of harmonic torque terms causes undesirable perturbationsin the mechanical load attached to the motor shaft. In some applicationsthese perturbations can be prohibitive. The previous results offerinsight into the cause and characteristics of these harmonics andsuggests ways in which they might be minimized.

Analysis of equation (34) for n=1 shows that the 4th harmonic torque,for instance, depends on the adjacent 3rd and 5th harmonics of thepermanent magnet flux waveform. A way of minimizing the magnitude of theterm is to inject 3rd harmonic current along with the originalsinusoidal phase current. This additional current is added to the normalsinusoidal A and B that currents so the

    I.sub.B (α.sub.o) = I.sub.A [α.sub.o -#/2]

In other words, the B phase current waveform must be identical to thatof the A phase but shifted by one-fourth of a period. The level of 3rdharmonic can be adjusted to optimize the correction for different motorsor different load conditions.

In effect, the added 3rd harmonic current heterodynes, or beats, withthe permanent magnet flux fundamental to create 4th and 2nd harmonictorque in each phase of the motor. As before, the quadrature arrangementof the two phases causes the additional 2nd harmonic torque to canceland enhances the new 4th harmonic term. If the amplitude and phase ofthe 3rd harmonic current is properly adjusted, the 4th harmonic torquethus created will effectively cancel that generated by the fundamentalphase current.

The added 3rd harmonic current also beats with the higher odd harmonicspresent in the permanent magnet flux waveform and produces additionaltorque at dc and all other even harmonics. These terms are much lower inmagnitude than the primary corrective term discussed above because ofthe difference in amplitude between the permanent magnet fluxfundamental and its higher harmonics. Consequently, these torquecomponents can be neglected without significant error.

If reduction of the 8th harmonic torque is desired, it can be achievedsimilarly by adding a 7th harmonic term to both phase currents. Thisterm will beat with the permanent magnet flux fundamental to create 6thand 8th harmonic torque components. The 6th harmonic torque will againcancel because of the two quadrature phases and the 8th harmonic torquefrom the two phases will add. Proper adjustment of the 7th harmoniccurrent amplitude and phase will minimize the resultant 8th harmonictorque. This argument can be repeated for the correction of higherfrequency terms as necessary.

Similar results can be obtained by either: (1) using the currentharmonic immediately above the troublesome torque harmonic or; (2) usinga weighted sum of both the upper and lower current harmonics adjacent tothe particular torque harmonic. The lower harmonic was assumed in thediscussion above because: (1) a single harmonic is easier to implementand adjust, and (2) the lower current frequency develops less voltageacross the phase winding inductance.

The 4th harmonic torque is usually the most troublesome and the added3rd harmonic current seems to be the most effective method ofcorrection. The results obtained here will thus cover the area of mostdirect interest as well as serve as a guideline to the analysis of othercases. This section presents a detailed analysis of the results producedby adding a 3rd harmonic term to the phase currents. Similar analysescan be made for the other cases discussed above, but for brevity, willnot be included here.

Let the A phase current, I_(A), be given by

    I.sub.A = I.sub.P Cosα.sub.o + I.sub.3 Cos(3α.sub.o +β) (36)

In accordance with equation (35), the B phase current will then be

    I.sub.B = I.sub.P Sinα.sub.o - I.sub.3 Sin(3α.sub.o +β) (37)

Applying Euler's identities gives ##EQU20## Substituting equation (38)into equation (13) gives ##EQU21## or

    T.sub.A = T.sub.A +T.sub.A                                 (41)

where T_(A) is the same as that given initially by equation (17) andultimately by equations (25) and (26). T_(A) is the result of the 3rdharmonic current and is given by ##EQU22## Neglecting all higher orderterms in the summation gives

    T.sub.A = -2NI.sub.3 Nr[Exp(j(3α.sub.o +β))+(Exp(-j(3α.sub.o +β))](jC.sub.1 Exp(jα)-jC.sub.-1 Exp-(-jα)) (43)

Recognizing that C₁ = C₋₁ and applying equations (20) and (21) gives theconstant torque as

    T.sub.A = 2jNi.sub.3 NrC.sub.1 [{-Exp(j(2ω.sub.o t+β+γ))+Exp(-j(2ω.sub.o t+β+γ))}+{Exp(j(4ω.sub.o t+β-γ)-Exp(-j(4ω.sub.o t+β-γ))}](44)

Euler's identities reduce this to

    T.sub.A = 4Ni.sub.3 NrC.sub.1 [-Sin(2ω.sub.o t+β+γ)+Sin(4ω.sub.o t+β-γ)]   (45)

Turning now to the B phase, substitution of equation (39) into equation(14) gives ##EQU23## or

    T.sub.B = T.sub.B +T.sub.B                                 (47)

where T_(B) is the same as the torque due to purely sinusoidal phasecurrent given by equations (27) and (28). T_(B) is the torque termresulting from the 3rd harmonic current and is given by ##EQU24##Assuming that all higher order terms in the summation above areinsignificant with respect to C₁ and C₋₁ gives

    T.sub.B = -2NI.sub.3 Nr[Exp(j(3α.sub.o +β))-Exp(-j(3α.sub.o +β))][jC.sub.1 Exp(jα)+jC.sub.-1 Exp(-jα)]                   (49)

At constant velocity equations (20) and (21) apply to make

    T.sub.B = -2jNI.sub.3 NrC.sub.1 [{Exp(j(2ω.sub.o t+β+γ))-Exp(-j(2ω.sub.o t+β+α))}+{Exp(j(4ω.sub.o t+β-γ))-Exp(-j(4ω.sub.o t+β-γ))}](50)

This reduces to

    T.sub.B = 4NI.sub.3 NrC.sub.1 [Sin (2ω.sub.o t+β+γ)+Sin(4ω.sub.o t+β-γ)]   (51)

The total torque generated by fundamental and 3rd harmonic currents is

    T = T.sub.A + T.sub.A + T.sub.B + T.sub.B = T + T          (52)

where

    T = T.sub.A + T.sub.B                                      (53)

as seen by equations (32) and (33). T is found from equations (45) and(51) as

    T = T.sub.A + T.sub.B = 8NI.sub.3 NrC.sub.1 Sin(4ω.sub.o t+β-γ)                                         (64)

The total torque, T, is thus exactly the same as that derived forsinusoidal phase currents except that a 4th harmonic term has beenadded, hopefully in a manner that reduces the overall magnitude of thattorque component.

The 4th harmonic of T as obtained from equations (32) and (33), withn=+1 and -1, is

    T.sub.4 = -4NI.sub.P Nr(D.sub.4 Exp(j4ω.sub.o t+D.sub.-4 Exp(-j4ω.sub.o t)                                   (55)

with

    D.sub.4 = j{3C.sub.3 Exp(-j3γ)+5C.sub.5 Exp(-j5γ)}(56)

    D.sub.-4 = -j{3C.sub.-3 Exp(+j3γ)+5C.sub.-5 Exp(+j5γ)}(57)

Since C_(i) = C_(-i), this reduces to

    T.sub.4 = 8NI.sub.p Nr{3C.sub.3 Sin(4ω.sub.o t-3y)+5C.sub.5 Sin(4ω.sub.o t-5γ)]                           (58)

For perfect cancellation of the 4th harmonic torque the sum of T and T₄must be zero. This implies that

    I.sub.3 C.sub.1 Sin(4ω.sub.o t+β-γ)= -[3I.sub.p C.sub.3 Sin(4ω.sub.o t-3γ)+5I.sub.p C.sub.5 Sin(4ω.sub.o t-5γ)]                                              (59)

This equation is illustrated by the phasor diagram of FIG. 2.

Equation (59) and its corresponding phasor diagram show that in general,the amplitude and phase of the required 3rd harmonic correction currentboth vary as a function of the rotor lag angle, γ. This angle in turndepends on the speed related torque required by the load. implementing acorrection that remains perfect over a wide speed range would thus beextremely difficult.

Fortunately, however, correction of the 4th harmonic torque is usuallycritical only in a narrow range of motor speed. When the frequency ofthe 4th harmonic torque component falls within the bandwidth of themotor-load resonance, mechanical motion of the load is amplified. Thecritical speed range is thus usually fairly narrow and dependent on thedamping factor of the motor-load response. Rotor lag angles arerelatively low in this speed range. These two factors combine to greatlysimplify the implementation of a practical correction waveform.

If the rotor lag angle were zero, FIG. 2 implies that the optimum valuefor β would be π. Equation (59) would then reduce to

    I.sub.3 C.sub.1 = 3I.sub.p C.sub.3 + 5I.sub.p C.sub.5      (60)

this condition minimizes 4th harmonic perturbations under no-loadconditions. As the lag angle magnitude increases from zero in a positiveor negative direction the phasor diagram alters as shown in FIG. 3 toproduce a finite but still greatly reduced 4th harmonic torque. Theamplitude of the 3rd harmonic, I₃, must be reduced somewhat as |γ|increases to maintain a minimum magnitude for T₄. This minimum occurswhen T and the resultant torque, T₄, are in quadrature as shown in FIG.3.

A practical implementation of this technique for small rotor lag anglesis to produce phase currents of the form

    I.sub.A = I.sub.P Cosα.sub.o - I.sub.3 Cos3α.sub.o (61)

    I.sub.B = I.sub.p Sinα.sub.o + I.sub.3 Sin3α.sub.o (62)

If the implementation is to be used with many motors having variousharmonic characteristics, the value of I₃ should be made adjustable overa range of positive and negative values centered about zero. This is dueto the fact that the amplitude of the 4th harmonic torque produced byvarious motors may vary and the sense may be either plus or minus,depending on the signs and relative magnitudes of C₃ and C₅.

A method for generating such waveforms for a two axis (X-Y coordinate)system is shoWn schematically in FIG. 4. This implementation providesindependent adjustment of the 3rd harmonic correction current for eachmotor. In addition, it simultaneously varies the A and B phase waveformsfor each motor with a single adjustment.

FIG. 4 shows a motor unit 69 comprising an interpolator 71, a functiongenerator or read-only-memory (ROM) 27, digital to analog converter(DAC) 29, control circuit 73, phase current amplifiers 75, 77, 79, 81and X and Y axis motors 55 and 65. Interpolator 71, in turn, includesdivider registers 20, 22, adders 21, 23, 8-bit accumulator registers 24,26, multiplexer 25 and 8KHz clock 28.

When X-position data is applied to motor unit 69, interpolator 71converts the applied data to an address for accessing current waveformvalues stored in ROM 23, and for producing a sample of the accessedwaveform. This sample is then applied to DAC 29 which converts thesample to an analog signal, and applies the analog signal, via controlcircuit 73 and phase current amplifiers 75, 77, to motor 55. In responseto the applied analog signal, motor 55 rotates a selected angle causingplot head 67 to move, in the X direction, a distance proportional to theapplied X position data. Similarly, Y position data applied to motorunit 69 causes plot head 67 to move, in the Y direction, a distanceproportional to the applied Y position data.

As shown in FIG. 4, X and Y position data, in the form of incrementaldistance values d_(x) and d_(y), are applied to divider registers 20, 22respectively. These incremental values represent distances along the Xand Y coordinate axes that plot head 67 must travel during a selectedtime period (e.g., during a one millisecond period, corresponding to a1KHz clock signal). Since these values (d_(x) and d_(y)) indicatedistances to be travelled over a period of time, they present velocityvalues, viz., velocities at which plot head 67 must travel along the Xand Y coordinate axes, respectively. These applied incremental values,d_(x) and d_(y), may be variable, and may be determined, for example, asfollows:

    d.sub.x = ΔX/C

    d.sub.y = ΔY/C

where,

ΔX represents the X component of the vector defined by successive inputdata pairs (X₀, Y₀) and (X₁, Y₁) as shown in FIG. 5,

ΔY represents the Y component of said vector, and

C represents an integer equal to the number of one millisecond clockperiods into which the data period (il.e., the time or period betweensuccessive input data pairs, in milliseconds) may be divided.

Returning now to FIG. 4, incremental distance values d_(x) and d_(y) areapplied to divider registers 20, 22, respectively, of interpolator 71.Interpolator 71, as mentioned above, utilizes these incremental distancevalues to produce ROM addresses for accessing selected locations (words)of ROM 27. ROM 27 contains four sectors (series) of digital values.These digital values are samples of selected analog waveformsrepresenting one period of a fundamental frquency waveform and threeperiods of a third harmonic waveform. The four ROM sectors include, as aseries of digital values, one period of the fundamental and threeperiods of third harmonic data, as follows: (1) the A phase thirdharmonic (2R₃ cos 3α₀), (2) a phase fundamental plus third harmonic(cosα₀ -R₃ cos 3α₀), (3) B phase third harmonic (-2R₃ sin 3α₀), and (4)B phase fundamental plus third harmonic (sinα₀ + R₃ sin 3α₀). Thedigital values are stored in two groups of 128 words each, each wordcontaining 16 bits. A first group of words contains A-phase waveformdata (explained hereinafter) to be applied to motors 55, 65, and thesecond group of words contains B-phase waveform data (explainedhereinafter) to be applied to motors 55, 65. Of the first group of wordsof ROM 27, the most significant (leading) eight bits contain A-phasethird harmonic data, and the least significant eight bits containA-phase fundamental plus third harmonic data. Likewise, the most andleast significant eight bits of the second group of ROm words containB-phase third harmonic and B-phase fundamental plus third harmonic data.Thus, within each group, a single address permits the accessing ofA-phase and B-phase current waveform data for application to a motor.

Interpolator 71, as shown in FIG. 4, utilizes the applied incrementaldistance values d_(x) and d_(y) to produce ROM addresses. The ROMaddresses are, in turn, used to cycle-through ROM 27 (i.e., toprogressively access the addressed words of ROM 27 in accordance withaccepted sampling theory), and to advance motors 55, 65 and plot head67.

To recreate a waveform, sampling theory dictates that at least twosamples of the highest frequency contained in the waveform are required.Since ROm 27 contains one cycle of the fundamental and three cycles ofthe third harmonic component, at least six samples must be accessedevery addressing cycle through the ROM. This means that the largestadvance or increment allowable between selected ROM addresses (i.e., theincrement from one ROM-address-advance to the next) should be one-sixthor less of a full-scale advance, a full-scale advance being equivalentto an advance of one cycle or period through ROM 27. (For example, afull-scale, one-cycle advance would cause plot heat 67 to move linearly0.04 inches, where 50 cycles produces one revolution of motor 55, or ofmotor 65, equivalent to a linear movement of 2 inches.) If the inputvalues of d_(x) and d_(y) were simply added (by their respective adders21, 23) to their respective accumulators 24, 26 in a single step,excessively large address values may be produced that would cause theROM-address-increment to exceed one-sixth of a full-scale advance. Toavoid this problem and produce acceptable address increments thatsatisfy accepted sampling theory and that are sufficiently small topermit satisfactory reproduction of selected waveforms stored in ROM 27,the ROM-address-increments corresponding to d_(x) and d_(y) are firstapplied to registers 20, 22 where they are divided by an integer (e.g.,the integer eight) to produce the values (d_(x) /8) and (d_(y) /8).These values (d_(x) /8) and (d_(y) 8) are then applied to adders 21 and23, respectively. During each increment period (e.g., 1 millisecond)that d_(x) is applied to register 20, adder 21 adds (d_(x) /8) to thecontents of register 24 eight times. The rate (8KHz) at which thisadding operation is performed is indicated by clock 28. At the end ofeach subperiod (i.e., 1/8 millisecond), the contents (A) of accumulatorregister 24 is as follows:

    ______________________________________                                        Elapsed time                                                                  (Successive      Register                                                     subperiods in    Contents                                                     milliseconds)    (A)                                                          ______________________________________                                        .125                                                                                            ##STR1##                                                    .25                                                                                             ##STR2##                                                    .375                                                                                            ##STR3##                                                    .5                                                                                              ##STR4##                                                    .625                                                                                            ##STR5##                                                    .75                                                                                             ##STR6##                                                    .875                                                                                            ##STR7##                                                    1.0              A.sub.0 + d.sub.x                                            ______________________________________                                    

where, A represents the quantity A₀ + kd_(x) /8, A₀ represents animmediately previous content of register 24 or an initial address value(viz., the start-up contents of register 24 corresponding to an initialX-component position of plot-head 67), and k represents the number oftimes, within a 1 ms period, that d_(x) has been added to A₀. Thequantity A from register 24 is then truncated to produce an integeraddress N_(x) for accessing ROM 27. Similarly, in response to d_(y)being applied to divider register 22, adder 23 and accumulator 26operates in conjunction with register 22 to produce an integer addressN_(y) (equivalent to the integer portion of A₀ + kd_(y) /8) each 1/8millisecond period. At the end of each subperiod (1/8 ms), the ROMaddresses N_(x) and N_(y) are then applied to multiplexer 25 foraccessing locations (words) in ROM 27 that have addresses N_(x) andN_(y), respectively. Each address N represents one of 128 ROM addresses.Thus, where, as here, accumulator registers 24, 26 are selected as 8-bitregisters, overflow of these registers causes their contents to betreated modulo 128 which, in effect, produces 128 cyclical addresses (0→ 127 → 0).

The output of multiplexer 25 is applied to ROM 27 via 7-bit addressinput line 30. The 7-bit address input line corresponds to the sevenleast significant bits of accumulator registers 24, 26. The integercontents of these seven least significant bits (i.e., address N) areused to specify a ROM location (word) within each group. Thus, anaddress N_(x) would be used to specify, to X-motor 55, a ROM word in thefirst group containing A-phase current information and also a ROM wordin the second group containing B-phase current information.

During the first half of a control cycle (i.e., the cycle for producingan X-and a Y-axis phase current waveform sample, where the X-axis phasecurrent waveform sample is represented by a first pair of A and B phasewaveform samples defining a position along the X coordinate axis, andthe Y-axis phase current waveform sample is represented by a second pairof A and B phase waveform samples defining a position along the Ycoordinate axis), the contents of a ROM word from the first group issampled and an analog equivalent of the sampled value is applied tosample and hold circuit 35. This operation is accomplished as follows:first, switch 41 is closed and switch 43 is opened, next, the A-phasethird harmonic (stored in bits 9-16 of the ROM word having the addressN_(x)) is accessed and applied to digital-to-analog converter 29. Afterthe digital-to-analog converter 29 has had time to settle and to convertthe applied digital sample to an analog waveform sample and apply saidwaveform sample to summing amplifier 31, switch 33 is closed long enoughto load the third harmonic waveform sample into sample-and-hold circuit35.

Next, the A-phase fundamental plus third harmonic (stored in bits 1-8 ofthe ROM word with address N_(x)) is accessed and applied todigital-to-analog converter 29. At this time, switch 33 is opened andswitch 45 is closed. Once the digital-to-analog converter 29 has settledand has converted the applied digital sample to an analog waveformsample and applied said waveform sample to summing amplifier 31, theoutput of the summing amplifier 31 consists of a composite waveformsample representing the A-phase fundamental plus third harmonic and anadjusted amount of third harmonic as determined by potentiometer 37.(The adjustable third harmonic level added to the analog waveform samplethrough switch 41 is out of phase with that preloaded into the ROM 27 sothat the resultant level is adjustable from negative to positive throughzero.) After the composite A-phase waveform sample has settled, switch47 is closed momentarily to set sample-and-hold circuit 49. The outputof sample-and-hold circuit 49 is a stair-step approximation of acontinuous current waveform which is applied, via phase currentamplifier-converter 75, to the A-phase stator windings of the X axismotor 55. (Post-sample filtering may be used to smooth the stairstepapproximation before driving motor 55.)

In a similar manner, a composite B-phase waveform sample is generated,by first accessing the B-phase third harmonic from ROM 27 and loadingsample-and-hold circuit 35 with an analog equivalent of the sample. TheB-phase fundamental plus third harmonic is then added to an adjustedthird harmonic waveform sample to produce the composite B-phase waveformsample after which, switch 51 is closed momentarily to setsample-and-hold circuit 53. Actually, switches 33 and 41 are closed andswitches 43 and 45 are opened in order to load circuit 35 with a B-phasethird harmonic waveform sample (the sample being accessed from bits 9-16of the ROM word in the second group having the address N_(x)), afterwhich, the B-phase fundamental plus third harmonic is sampled from ROM27 (i.e., accessed from bits 1-8 of the ROM word in the second grouphaving the address N_(x)) and added to B-phase third harmonic by summingamplifier 31 to produce a composite B-phase waveform sample. Thiscomposite B-phase waveform sample is then loaded into sample-and-holdcircuit 53, upon the opening of switch 33 and the closing of switches 45and 51. The output of circuit 53 is a stair-step approximation of acontinuous current waveform which is applied, via phase currentamplifier-converter 77, to the B-phase stator windings of the X axismotor 55. The action to this point is completed in the first half of thecontrol cycle.

During the second half of the cycle, a second pair of composite A-andB-phase waveform samples (representing the Y axis phase current waveformsamples) are produced in the same manner as for the first pair, exceptthat potentiometer 39 is used in conjunction with switch 43 to producethe second pair. (As indicated hereinbefore, potentiometer 37 is used inconjunction with switch 41 to produce the first pair.) This second pairof A-and B-phase waveform samples represents a composite of samplesaccessed from ROM 27 according to the Y-address value N₄ applied to ROM27 by multiplexer 25. With switches 57 and 61 closed, the compositeA-and B-phase waveform samples of the second pair are then applied tosample-and-hold circuits 59 and 63, respectively. Circuits 59 and 63, inturn, apply the waveform samples (in the form of stair-stepapproximations of continuous current waveforms), via phase currentamplifier-converters 79, 81, to the A-and B-phase stator windings,respectively, of Y axis motor 65. After the A- and B-phase currentsamples are applied to Y axis motor 65, the control cycle is ended andanother control cycle begins as the process is repeated. Successivepairs of A-and B-phase currents applied to the X-and Y-axis motors 55,65 cause plot head 67 to move smoothly from position (X₀, Y₀) toposition (X₁, Y₁).

The outputs from sample-and-hold circuits 49, 53, 59 and 63 are appliedto the inputs of phase current amplifier-converters 75, 77, 79 and 81,respectively. These amplifier-converter devices (which include controlsfor adjusting dc offset and phase current amplitude, and which mayoptionally include post-sample filtering to smooth the current waveformsas shown in FIG. 6) convert input voltage into a corresponding currentin their phase windings.

From the foregoing, analysis of equations (13) and (14) shows that ifeither I_(A) or I_(B) contains a dc term, torque will be produced at thefundamental frequency, ω₀. (Any residual dc magnetic fields retained inthe motor ferromagnetic material that produce flux in the A-and B-phasewindings will create this same effect.) This effect can be cancelled byadjusting the dc offset controls on the A-and B-phase currentamplifier-converters for each motor.

The equations (25), (26), (27) and (28) describing the torque producedby the two phases, assume that (1) both phases have identical peakcurrent amplitudes applied, and (2) the winding count is identical forthe two phases. These assumptions permit substantially perfectcancellation of torque harmonics at 2ω₀, 6ω₀, 10ω₀, etc., as indicatedby equation (41). The primary requirement leading to the cancellation ofthese harmonics is that the applied mmf in each phase is identical inmagnitude and that the two phases are electrically and mechanically inquadrature. The quadrature requirement is met by the mechanical designof the motor and the bit patterns stored in the waveform ROM 27. Therelative magnitudes of the A-and B-phase mmf can be equalized byadjusting the amplitude of the applied current to either phase. Ifdeficiencies exist in the effective number of turns for either phase,the mmf can be corrected by applying a correspondingly larger current.

Three separate adjustments are thus provided for each motor: (1) dcoffset, which affects torque at ω₀ (2) relative gain between the phases,which affects torque harmonics at 2ω₀, 6ω₀, etc., and (3) third harmonicamplitude, which affects the torque harmonic at 4ω₀. These adjustmentsare made in sequence starting with the dc offset. First, the inputcurrent frequency, ω₀, for one axis is adjusted so that it falls nearthe peak of the lowest frequency resonance of the rotor-loadcombination. The A-and B-phase offset currents are then iterativelyadjusted to minimize resonant frequency vibrations sensed in the rotor'smotion. Next the phase current frequency is halved so that the 2ω₀torque harmonic falls on the resonance. The peak amplitude of one phasecurrent is then adjusted relative to the other until a null is sensed inthe rotor vibrations. Finally, the phase current frequency is halvedagain so that the 4ω₀ torque harmonic frequency falls near the resonantfrequency. The amplitude of the third harmonic in the A-and B-phasewaveforms is adjusted until a null is again sensed in the rotorvibrations.

If mechanical limits make it impractical to allow the motor to run longenough for the necessary adjustment to be accomplished, an alternativemethod may be used. This alternative method features an X-Y vector whichis repetitively drawn back and forth along a single line. The line slopeis then adjusted until the slow axis current frequency is at the desiredvalue. The desired adjustment is then made.

FIG. 6 shows an alternative embodiment of the present invention whichmay be utilized to achieve smooth, continuous positioning of a devicesuch as a plot head by applying sinusoidal phase currents to synchronousinductor motors connected to the device, harmonic torque perturbationsof the motor not being a substantial problem. In the system of FIG. 6,the function generator or ROM 89 includes only the fundamental frequencywaveform of the A- and B- phase currents to be supplied to the statorwindings of motors 115, 117, and does not include third harmonicwaveform data. Also, interpolators 85 and 87 each include a divider, anadder and an accumulator register (the multiplexer shown in FIG. 4 beingomitted, since the outputs from the accumulator registers are applieddirectly to the ROM).

When X-position data, in the form of incremental distance value d_(x),is applied to X-axis interpolator 85 of motor unit 121 for a selectedtime period such as 1 millisecond, interpolator 85 treats d_(x) as avelocity value and produces therefrom a ROM address N_(x). This ROMaddress is applied to ROM 89 where it is used to access a 16-bit ROMlocation having an 8-bit digital sample of the A-phase current waveformand an 8-bit sample of the B-phase current waveform. For example, theA-and B-phase waveform samples in the ROM may be stored in the followingform (in degrees):

    A-phase sample = 127 Sin (N/128× 360)

    b-phase sample = 127 Cos (N/128× 360)

where, 127 represents a scale factor and N represents address N_(x) (orN_(y) ROM location with address N_(y) is being accessed). The accessedA-and B-phase samples are then applied to digital-to-analog converters(DAC) 91 and 93 respectively, where they are converted to analog values(levels) and applied to low pass filters 99 and 101, respectively. Lowpass filters 99 and 101 smooth the applied analog values and apply thesmoothed analog values to phase current amplifiers (bipolarvoltage-to-current converter-drivers) 107 and 109 respectively.Amplifier-converters 107 and 109 convert the applied analog values toA-phase and B-phase motor currents, respectively, and apply thesecurrents to X axis motor 115.

In a similar manner, as shown in FIG. 6, when Y position (velocity) datad_(y) is applied to Y-axis interpolator 87 of motor unit 121. A-andB-phase motor currents corresponding to the value of d_(y) are appliedto Y axis motor 117. Successive pairs of these A-and P-phase motorcurrents applied to the X and Y axis motors 115 and 117, cause plot head119 to move smoothly from one position to the next, for example, from(X₀, Y₀) to (X₁, Y₁).

If torque perturbations are important but motor characteristics aresufficiently constant so that a fixed harmonic structure can be includedin the phase current waveform to effect the necessary correction, thisfixed-harmonic-structure phase current waveform can be stored in ROM 89in place of the abovementioned sinusoids, in which event the operationof the system would be as described above, except that the phasecurrents now contain the harmonics necessary to achieve smoothperformance.

We claim:
 1. An electric drive comprising:an inductor-type synchronousmotor having a plurality of stators coupled to a plurality of statorwindings each of which is capable of being excited by a complex waveformcurrent having a fundamental frequency and a harmonic of the fundamentalfrequency, and having a magnetized moveable portion that is supportedfor movement relative to the stators and is capable of producing a forcein a selected direction in response to a current in the stator windings,and generates periodic flux waveforms which include the fundamentalfrequency and harmonics of the fundamental frequency that heterodynewith the fundamental frequency in the current to produce a harmonic ofthe current fundamental frequency in the motor force; and a plurality ofphase current supplies each including: an input connected to receive anapplied source of power; an output connected to one of said plurality ofstator windings; and means coupled to said input for producing thecomplex waveform current at the output, which current has thefundamental frequency and the harmonic of the fundamental frequencywhich harmonic is an adjacent harmonic to the harmonic in the motorforce, such that the harmonic in the current heterodynes with thefundamental frequency in the periodic flux waveforms to generate beatfrequencies in the motor's force which diminish the magnitude of theharmonic in the motor force that occurs as a result of the currentfundamental frequency heterodyning with the periodic flux waveforms inthe motor.
 2. An electric drive comprising:an inductor-type synchronousmotor having a plurality of stators coupled to a plurality of statorwindings each of which is capable of being excited by a complex waveformcurrent having a fundamental frequency and a harmonic of the fundamentalfrequency, and having a magnetized rotor that rotates about an axis andis capable of producing torque in response to a current in the statorwindings and generates periodic flux waveforms which include thefundamental frequency and harmonics of the fundamental frequency thatheterodyne with the fundamental frequency in the current to produce aharmonic of the current fundamental frequency in the motor torque; and aplurality of phase current supplies each including: an input connectedto receive an applied source of power; an output connected to one ofsaid plurality of stator windings; and means coupled to said input forproducing the complex waveform current at the output, which current hasthe fundamental frequency and the harmonic of the fundamental frequencywhich harmonic is an adjacent harmonic to the harmonic in the motortorque, such that the harmonic in the current heterodynes with thefundamental frequency in the periodic flux waveforms to generate beatfrequencies in the motor's torque which diminish the magnitude of theharmonic in the motor torque that occurs as a result of the currentfundamental frequency heterodyning with the periodic flux waveforms inthe motor.
 3. An electric drive as in claim 2 wherein said:inductor-typesynchronous motor includes eight stators disposed equidistant from theaxis and spaced at equiangular intervals about the axis, with a firstset of alternate angularly spaced stators having stator windingsconnected in a direct and quadrature axis configuration and capable ofbeing excited by a first complex waveform current and a remaining set ofalternate angularly spaced stators having stator-windings connected in adirect and quadrature axis configuration and capable of being excited bya second complex waveform current; and phase current supplies include afirst phase current supply which generates the first complex waveformcurrent and a second phase current supply which generates the secondcomplex waveform current such that the second complex waveform currentis similar in waveshape to the first complex waveform current displacedin phase by π/2 radians.
 4. An electric drive as in claim 3 whereinsaid:harmonic in the inductor-type synchronous motor torque is thefourth harmonic of the fundamental frequency in the complex waveformcurrent; and said harmonic in the complex waveform current is the thirdharmonic of the fundamental frequency in the complex waveform current.5. An electric drive as in claim 2 wherein said means includes:anaddressable digital memory means having a plurality of address inputsconnected to receive an applied address signal as a memory locationaddress for producing a plurality of outputs representative of a contentof the addressed memory location; said content of sequentiallyaddressable memory locations of the addressable digital memory meanshaving a sampled digital representation of said complex waveformcurrent; and a digital-to-analog converter having a plurality of inputsconnected to receive the outputs of the addressable digital memory meansfor producing an analog output representative of said complex waveformcurrent.
 6. An electric drive as in claim 5 wherein said:means includesa digital accumulator having an input connected to receive aperiodically applied signal which is added to a content of theaccumulator and producing a plurality of outputs representative of thecontents of the accumulator and connected to said plurality of addressinputs for generating said applied address signal.
 7. In aninductor-type synchronous motor having a magnetized moveable portiondriven by an alternating signal having a fundamental frequency, a methodof diminishing a harmonic sinusoidal perturbation in the force arisingfrom the alternating signal heterodyning with sinusoidal flux waveforms,including the fundamental frequency and harmonics of the fundamentalfrequency, generated by the motion of the magnetized moveable portion,comprising the step of:driving the inductor-type synchronous motor witha complex waveform current having the fundamental frequency and aharmonic of the fundamental frequency, which harmonic is an adjacentharmonic to the harmonic in the motor force, such that the harmonic inthe current heterodynes with the fundamental frequency in the periodicflux waveforms to generate beat frequencies in the motor force whichdiminish the magnitude of the harmonic in the motor force.
 8. In aninductor-type synchronous motor having a magnetized rotor driven by analternating signal having a fundamental frequency, a method ofdiminishing a harmonic sinusoidal perturbation in the torque arisingfrom the alternating signal heterodyning with sinusoidal flux waveforms,including the fundamental frequency and harmonics of the fundamentalfrequency, generated by the rotation of the magnetized rotor, comprisingthe step of:driving the inductor-type synchronous motor with a complexwaveform current having the fundamental frequency and a harmonic of thefundamental frequency, which harmonic is in adjacent harmonic to theharmonic in the motor torque, such that the harmonic in the currentheterodynes with the fundamental frequency in the periodic fluxwaveforms to generate beat frequencies in the motor torque whichdiminish the magnitude of the harmonic in the motor torque.
 9. In aninductor-type synchronous motor having a magnetized moveable portiondriven by an alternating signal having a fundamental frequency, a methodof diminishing force perturbations that occur in the motor at thefundamental frequency as a result of phase currents of the signal havinga dc offset component, the method comprising the steps of:adjusting thefundamental frequency to substantially coincide with the lowest resonantfrequency of the moveable portions; and adjusting the dc offsetcomponent of the phase currents to minimize resonant frequencyvibrations of the moveable portion.
 10. In an inductor-type synchronousmotor having a magnetized moveable portion driven by an alternatingsignal having a fundamental frequency and bipolar phase currents, amethod of diminishing force perturbations that occur in the motor atselected harmonics of the fundamental frequency, the method comprisingthe steps of:adjusting the phase currents until the lowest frequencyharmonic substantially coincides with the lowest resonant frequency ofthe moveable portion; and adjusting the peak amplitude of the phasecurrents relative to each other until a null occurs in vibration of themoving portion.
 11. In an inductor-type synchronous motor having amagnetized moveable portion driven by an alternating signal having afundamental frequency and bipolar phase currents containing a thirdharmonic of the fundamental frequency, a method of diminishing forceperturbations that occur in the motor at a fourth harmonic of thefundamental frequency, the method comprising the steps of:adjusting thephase currents until the fourth harmonic substantially coincides withthe resonant frequency of the motor; and adjusting the peak amplitude ofthe third harmonic inherent in the phase currents until a null occurs inmotor vibration.